package com.meichis.yndms.repository;


import com.meichis.yndms.model.WSIRequestPack;
import com.meichis.yndms.model.WSIResultPack;

import io.reactivex.Observable;
import retrofit2.http.Body;
import retrofit2.http.POST;
import retrofit2.http.Query;

public interface RootApi {

/*
    @POST("/bossapi/oauth/token")
    Observable<WSIResultPack> getToken(@Query("grant_type") String grant_type, @Query("username") String username, @Query(value = "password") String password, @Query("client_id") String client_id, @Query("client_secret") String client_secret);

    @POST("/bossapi/oauth/token")
    Observable<WSIResultPack> refreshToken(@Query("grant_type") String grant_type, @Query("refresh_token") String refresh_token, @Query("client_id") String client_id, @Query("client_secret") String client_secret);

    @POST("/bossapi/GetLastVersionInfo")
    Observable<WSIResultPack> GetLastVersionInfo(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    @POST("/bossapi/user")
    Observable<WSIResultPack> getCurrentUser(@Query("access_token") String access_token);

    //首页看板数据（IBM）
    @POST("/bossapi/GetOverview")
    Observable<WSIResultPack> GetOverview(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取附近门店
    @POST("/bossapi/NearRetailerList")
    Observable<WSIResultPack> NearRetailerList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店详情（IBM）
    @POST("/bossapi/GetShopInfo")
    Observable<WSIResultPack> GetShopInfo(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店详情-上次拜访信息（LXR）
    @POST("/bossapi/GetTerminalLastVisit")
    Observable<WSIResultPack> GetTerminalLastVisit(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取公告（IBM）
    @POST("/bossapi/GetNotice")
    Observable<WSIResultPack> GetNotice(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取公告（IBM）
    @POST("/bossapi/GetUnReadNotice")
    Observable<WSIResultPack> GetUnReadNotice(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //标记已读（IBM）
    @POST("/bossapi/UpdateNoticeRead")
    Observable<WSIResultPack> UpdateNoticeRead(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店管理-往来账款（LXR）
    @POST("/bossapi/GetCurrentAccount")
    Observable<WSIResultPack> GetCurrentAccount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //拜访分析-业务拜访分析（LXR）
    @POST("/bossapi/GetYWBFFX")
    Observable<WSIResultPack> GetYWBFFX(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹-获取经销商员工（mcs）
    @POST("/bossapi/GetRotateAdvList")
    Observable<WSIResultPack> GetRotateAdvList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹-获取经销商员工（mcs）
    @POST("/bossapi/GetStaffList")
    Observable<WSIResultPack> GetStaffList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹 （LXR）
    @POST("/bossapi/GetYWRBFGJ")
    Observable<WSIResultPack> GetYWRBFGJ(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-人员排名（LXR）
    @POST("/bossapi/GetUserSalesRank")
    Observable<WSIResultPack> GetUserSalesRank(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-门店排名（LXR）
    @POST("/bossapi/GetTerminalSalesRank")
    Observable<WSIResultPack> GetTerminalSalesRank(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-日销量看板（LXR）
    @POST("/bossapi/GetUserSalesDayKanban")
    Observable<WSIResultPack> GetUserSalesDayKanban(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-重点品项铺市率 （IBM）
    @POST("/bossapi/GetPartnerProductMarketRate ")
    Observable<WSIResultPack> GetPartnerProductMarketRate(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-本月、昨日端口使用情况 （LXR）
    @POST("/bossapi/DealerPortUsage")
    Observable<WSIResultPack> DealerPortUsage(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取系统时间（mcs）
    @POST("/bossapi/RequestSFA")
    Observable<WSIResultPack> RequestSFA(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月产品销量汇总-按品牌
    @POST("/bossapi/getMonthProductSalesSummaryByBrand")
    Observable<WSIResultPack> getMonthProductSalesSummaryByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月现有库存-按品牌
    @POST("/bossapi/getMonthProductStandingByBrand")
    Observable<WSIResultPack> getMonthProductStandingByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月到货件数-按品牌
    @POST("/bossapi/getMonthProductArrivalByBrand")
    Observable<WSIResultPack> getMonthProductArrivalByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月进货额-按品牌
    @POST("/bossapi/getMonthProductPurchaseByBrand")
    Observable<WSIResultPack> getMonthProductPurchaseByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //发货单查询
    @POST("/bossapi/getPartnerStayIn")
    Observable<WSIResultPack> getPartnerStayIn(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //理货照片二级菜单
    @POST("/bossapi/GetImgType")
    Observable<WSIResultPack> getTallySubType(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //理货照片
    @POST("/bossapi/GetImg")
    Observable<WSIResultPack> getTallyPhotos(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //小程序统计
    @POST("/bossapi/GetRegistSPCount")
    Observable<WSIResultPack> GetRegistSPCount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈未处理数量
    @POST("/bossapi/GetFeedbackPopCount")
    Observable<WSIResultPack> GetFeedbackPopCount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈列表
    @POST("/bossapi/GetMyFeedbackList")
    Observable<WSIResultPack> GetMyFeedbackList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈列表
    @POST("/bossapi/GetMyFeedbackByID")
    Observable<WSIResultPack> GetMyFeedbackByID(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈回复
    @POST("/bossapi/SaveFeedbackReply")
    Observable<WSIResultPack> SaveFeedbackReply(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈结束
    @POST("/bossapi/SetFeedbackFinish")
    Observable<WSIResultPack> SetFeedbackFinish(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //伊起赢
    @POST("/bossapi/GetYQYLinkUrl")
    Observable<WSIResultPack> GetYQYLinkUrl(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //活动告知
    @POST("/bossapi/getTpmAppSummary")
    Observable<WSIResultPack> getTpmAppSummary(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);
    */

    //------------------------------------------------------------------------------------


    @POST("/bossapi_uat/oauth/token")
    Observable<WSIResultPack> getToken(@Query("grant_type") String grant_type, @Query("username") String username, @Query(value = "password") String password, @Query("client_id") String client_id, @Query("client_secret") String client_secret);

    @POST("/bossapi_uat/oauth/token")
    Observable<WSIResultPack> refreshToken(@Query("grant_type") String grant_type, @Query("refresh_token") String refresh_token, @Query("client_id") String client_id, @Query("client_secret") String client_secret);

    @POST("/bossapi_uat/GetLastVersionInfo")
    Observable<WSIResultPack> GetLastVersionInfo(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    @POST("/bossapi_uat/user")
    Observable<WSIResultPack> getCurrentUser(@Query("access_token") String access_token);

    //首页看板数据（IBM）
    @POST("/bossapi_uat/GetOverview")
    Observable<WSIResultPack> GetOverview(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取附近门店
    @POST("/bossapi_uat/NearRetailerList")
    Observable<WSIResultPack> NearRetailerList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店详情（IBM）
    @POST("/bossapi_uat/GetShopInfo")
    Observable<WSIResultPack> GetShopInfo(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店详情-上次拜访信息（LXR）
    @POST("/bossapi_uat/GetTerminalLastVisit")
    Observable<WSIResultPack> GetTerminalLastVisit(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取公告（IBM）
    @POST("/bossapi_uat/GetNotice")
    Observable<WSIResultPack> GetNotice(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取公告（IBM）
    @POST("/bossapi_uat/GetUnReadNotice")
    Observable<WSIResultPack> GetUnReadNotice(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //标记已读（IBM）
    @POST("/bossapi_uat/UpdateNoticeRead")
    Observable<WSIResultPack> UpdateNoticeRead(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //门店管理-往来账款（LXR）
    @POST("/bossapi_uat/GetCurrentAccount")
    Observable<WSIResultPack> GetCurrentAccount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //拜访分析-业务拜访分析（LXR）
    @POST("/bossapi_uat/GetYWBFFX")
    Observable<WSIResultPack> GetYWBFFX(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹-获取经销商员工（mcs）
    @POST("/bossapi_uat/GetRotateAdvList")
    Observable<WSIResultPack> GetRotateAdvList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹-获取经销商员工（mcs）
    @POST("/bossapi_uat/GetStaffList")
    Observable<WSIResultPack> GetStaffList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //行程轨迹 （LXR）
    @POST("/bossapi_uat/GetYWRBFGJ")
    Observable<WSIResultPack> GetYWRBFGJ(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-人员排名（LXR）
    @POST("/bossapi_uat/GetUserSalesRank")
    Observable<WSIResultPack> GetUserSalesRank(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-门店排名（LXR）
    @POST("/bossapi_uat/GetTerminalSalesRank")
    Observable<WSIResultPack> GetTerminalSalesRank(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-日销量看板（LXR）
    @POST("/bossapi_uat/GetUserSalesDayKanban")
    Observable<WSIResultPack> GetUserSalesDayKanban(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-重点品项铺市率 （IBM）
    @POST("/bossapi_uat/GetPartnerProductMarketRate ")
    Observable<WSIResultPack> GetPartnerProductMarketRate(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //销量分析-本月、昨日端口使用情况 （LXR）
    @POST("/bossapi_uat/DealerPortUsage")
    Observable<WSIResultPack> DealerPortUsage(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //获取系统时间（mcs）
    @POST("/bossapi_uat/GetServerNowTime")
    Observable<WSIResultPack> GetServerNowTime(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //调用sfa
    @POST("/bossapi_uat/RequestSFA")
    Observable<WSIResultPack> RequestSFA(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月产品销量汇总-按品牌
    @POST("/bossapi_uat/getMonthProductSalesSummaryByBrand")
    Observable<WSIResultPack> getMonthProductSalesSummaryByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月现有库存-按品牌
    @POST("/bossapi_uat/getMonthProductStandingByBrand")
    Observable<WSIResultPack> getMonthProductStandingByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月到货件数-按品牌
    @POST("/bossapi_uat/getMonthProductArrivalByBrand")
    Observable<WSIResultPack> getMonthProductArrivalByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //当月进货额-按品牌
    @POST("/bossapi_uat/getMonthProductPurchaseByBrand")
    Observable<WSIResultPack> getMonthProductPurchaseByBrand(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //发货单查询
    @POST("/bossapi_uat/getPartnerStayIn")
    Observable<WSIResultPack> getPartnerStayIn(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //理货照片二级菜单
    @POST("/bossapi_uat/GetImgType")
    Observable<WSIResultPack> getTallySubType(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //理货照片
    @POST("/bossapi_uat/GetImg")
    Observable<WSIResultPack> getTallyPhotos(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //小程序统计
    @POST("/bossapi_uat/GetRegistSPCount")
    Observable<WSIResultPack> GetRegistSPCount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈未处理数量
    @POST("/bossapi_uat/GetFeedbackPopCount")
    Observable<WSIResultPack> GetFeedbackPopCount(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈列表
    @POST("/bossapi_uat/GetMyFeedbackList")
    Observable<WSIResultPack> GetMyFeedbackList(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈列表
    @POST("/bossapi_uat/GetMyFeedbackByID")
    Observable<WSIResultPack> GetMyFeedbackByID(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈回复
    @POST("/bossapi_uat/SaveFeedbackReply")
    Observable<WSIResultPack> SaveFeedbackReply(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //终端反馈结束
    @POST("/bossapi_uat/SetFeedbackFinish")
    Observable<WSIResultPack> SetFeedbackFinish(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //伊起赢
    @POST("/bossapi_uat/GetYQYLinkUrl")
    Observable<WSIResultPack> GetYQYLinkUrl(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);

    //活动告知
    @POST("/bossapi_uat/getTpmAppSummary")
    Observable<WSIResultPack> getTpmAppSummary(@Query("access_token") String access_token, @Body WSIRequestPack requestPack);
}

